Currently, automation systems which are used to control the behavior of an environment such as a home or office building are programmed using either a simple command language or using a graphical user interface that requires a computer with a monitor. These systems are expensive and require substantial investment by the user in time and energy to install and modify programming. Generally to make changes in existing programs of such systems a user must consult a user's manual or call a programming specialist. The overall utility of the automation system is drastically reduced because the user finds it difficult to adapt the system to changing needs or to make additions, deletions or modifications to the programs resident in such systems.
Home automation systems, or home management systems as they are sometimes called, commonly provide for control of lighting, heating and air conditioning, window shades or curtains, pool heaters and filtration systems, lawn sprinklers, ornamental fountains, audio/visual equipment, and other appliances. Home automation systems are frequently integrated with a home security system so that when a fire alarm is raised, for example, internal and external lights will be turned on. Security systems frequently include lighting control and other types of home automation as an option. Many larger homes incorporate a home theater which requires a certain amount of automation for convenient operation and this automation is often extended to other parts of the dwelling. In farms, the automation system will also control outbuilding heating and lighting and warn of off normal conditions in automated feeding machinery and the like.
One form of automation system includes a central control unit that monitors environmental sensors and inputs from user controls and maintains a schedule of pre-programmed time-of-day and day-of-the week events. Inputs to the central control are provided by dedicated low-voltage wiring, for example, from door and window sensors, signals carried on power lines, RF signals, signals on existing telephone wiring and, occasionally, optical signals. The central control unit is controlled by a program that is either specifically built for the particular installation or a general-purpose program with a user interface that allows the owner or a technician employed by the owner to make certain types of modifications. The interfaces to these programs can be anything from strings of digits entered on standard touch-tone keypads, for example, Home Automation Inc.'s Omni Automation and Security System, to graphical user interfaces, for example, the Molex "Choices" software.
While the graphical user interfaces can be relatively easy to use, they require the presence in the home of a personal computer and often require the system owner to purchase additional hardware and software. Systems that rely on touch tone keypads for input and one- and two-line LCD for display are less expensive, but generally require the user to remember or, more likely, lookup arbitrary commands.
The Echelon Corporation has built home automation and industrial control apparatus based on a signaling protocol they refer to as LonWorks that uses a network of nodes each of which has one or more microprocessors. The system is designed to operate in a "cooperative computing" environment in which the individual nodes maintain their own programs. Programming of the individual nodes can be done by downloading new software from a temporarily attached lap top computer or by downloading software over the LonWorks network. A similar approach has been taken by CEBus and has been used in many custom installations for larger homes and office buildings.
While such systems eliminate the central control unit, modifying the software still requires the use of a PC-based system and usually requires the user to acquire relatively expensive hardware and software and become proficient in the use of PC-based software.
It is thus desirable to provide an automation system that is inexpensive, easily installed, and easily programmable and reprogrammable. It is also desirable to provide a home automation system that can be programmed and reprogrammed by a user having little or no knowledge or experience in programming. It is also desirable to provide an automation system that allows the incorporation of new and different, appliances and controllers without the system becoming obsolete.